/*
*= require_self
*= require rundeck1
*/
  @import "markdeep";
  @import "nav-links";

  @popover-wide-max-width: 500px;

  @base-item-padding-vertical: 8px;
  @base-item-padding-horizontal: 10px;
  @list-group-item-padding-vertical: @base-item-padding-vertical;
  @list-group-item-padding-horizontal: @base-item-padding-horizontal;

  body {
    //   padding-bottom: ((32px + @navbar-margin-bottom));
  }
  @brand-light: lighten(@brand-primary, 30%);
  a{
    text-decoration: underline;
    .nav li &,
    .pager li &,
    .dropdown-menu li &,
    &.navbar-brand,
    &.btn,
    &.list-group-item,
    .summary-count,
    &.close
    {
      text-decoration: none;
    }
  }
  /* brand navbar */
  .navbar-default
  .navbar-brand{
    font-family: 'Futura';
    text-transform: uppercase;
    background-color: #000000;
    &:hover, &:focus{
      color: red;
      background-color: #000000;
    }
  }

  /*
  text placeholders/labels that fit into nav and nav-pills
  */

  .nav {
    > li {
      > span.nav-text {
        position: relative;
        display: block;
        padding: @nav-link-padding;
      }
    }
  }

  .nav-pills {
    > li {
      // Links rendered as pills
      > span.nav-text {
        border-radius: 5px;
      }
    }
  }

    /* Reset the container */
  .container {
    max-width: none !important;
    width: auto;
  }
  .footer {
    margin-top: @navbar-margin-bottom;
    font-size: @font-size-small;
    color: @gray-light;
    position: relative;
    clear: both;
    padding: 10px 20px;
  }
  .auto-caret-open{
    .glyphicon();
    .glyphicon-chevron-down();
  }
  .auto-caret, .accordion-toggle.collapsed .auto-caret{
    .glyphicon();
    .glyphicon-chevron-right();
  }
  .auto-caret-container, .accordion-toggle{
    .auto-caret, .auto-caret-left {
      .glyphicon();
      .glyphicon-chevron-down();
    }
  }
  .active{
    > .auto-caret, > .auto-caret-left {
      .glyphicon();
      .glyphicon-chevron-down();
    }
    > * > .auto-caret, > * > .auto-caret-left {
      .glyphicon();
      .glyphicon-chevron-down();
    }
  }
  .auto-caret-left{
    .glyphicon();
    .glyphicon-chevron-left();
  }
  /* use glyphicon folder icons */
  .expandComponentHolder  > div > span.expandComponentControl.jobgroupexpand span.foldertoggle{
    width: 16px;
    height: 14px;
    display: inline-block;
      .glyphicon();
      .glyphicon-folder-close();
  }
  .expandComponentHolder.expanded  > div > span.expandComponentControl.jobgroupexpand span.foldertoggle{
    width: 16px;
    /*padding-bottom:14px;*/
    height: 14px;
    display: inline-block;
      .glyphicon();
      .glyphicon-folder-open();
  }
  .glyphicon-td{
    position: inherit;
    top: auto;
    display: table-cell;
  }
  .table.table-embed{
    margin-bottom: 0;
  }
  table.execoutput tr.contextRow td.expandicon.opened {
    .auto-caret-open();
    .glyphicon-td();
  }

  table.execoutput tr.contextRow td.expandicon.closed {
    .auto-caret();
    .glyphicon-td();
  }

  table.execoutput tr.contextRow.console td.expandicon.opened {
    .auto-caret-open();
    .glyphicon-td();
  }

  table.execoutput tr.contextRow.console td.expandicon.closed {
    .auto-caret();
    .glyphicon-td();
  }

  //state display
  .nowrunning{
    color: darken(@brand-info, 10%);
    font-weight: bold;
    font-style: italic;
  }
  .execstate{

    &[data-execstate=RETRY] {
      color: @brand-info;
    }
    &[data-execstate=NODE_MIXED], &[data-execstate=TIMEDOUT], &[data-execstate=FAILED-WITH-RETRY] {
      color: orange;
    }
    &[data-execstate=ABORTED]{
      color: @gray;
    }
    &[data-execstate=SUCCEEDED] {
      color: @gray-dark;
    }

    &[data-execstate=NODE_PARTIAL_SUCCEEDED] {
      color: @gray-dark;
    }

    &[data-execstate=RUNNING], .execstate[data-execstate=RUNNING_HANDLER] {
      color: darken(@brand-info, 10%);
    }
    &[data-execstate=SCHEDULED] {
      color: darken(@brand-info, 20%);
    }
    &[data-execstate=RUNNING_HANDLER] {
      border-bottom: 2px dotted orange;
    }

    &[data-execstate=FAILED] {
      color: red;
    }
    &[data-execstate=WAITING], &[data-execstate=NOT_STARTED] {
      color: @gray-darker;
    }
    &[data-execstate=PASS] {
      color: @gray;
    }
    &.isnode[data-execstate]{
      color:inherit;
    }


    &.step{
      &[data-execstate=SUCCEEDED] {
        .glyphicon();
        .glyphicon-check();
      }

      &[data-execstate=RUNNING], &[data-execstate=RUNNING_HANDLER], &[data-execstate=WAITING] {
        .glyphicon();
        .glyphicon-unchecked();
      }

      &[data-execstate=FAILED] {
        .glyphicon();
        .glyphicon-remove-circle();
      }
      &[data-execstate='FAILED-WITH-RETRY'] {
        .glyphicon();
        .glyphicon-repeat();
      }
    }
  }
  .execstate.execstatedisplay{
      &[data-execstate=RUNNING]:after, &[data-execstate=RUNNING_HANDLER]:after {
        content: 'Running';
      }

      &[data-execstate=NODE_MIXED]:after {
        content: 'Mixed';
      }

      &[data-execstate=SUCCEEDED]:after {
        content: 'OK';
      }

      &[data-execstate=NODE_PARTIAL_SUCCEEDED]:after {
        content: 'Partial';
      }

      &[data-execstate=FAILED]:after {
        content: 'Failed';
      }

      &[data-execstate=FAILED-WITH-RETRY]:after {
        content: 'Failed';
      }

      &[data-execstate=ABORTED]:after {
        content: 'Killed';
      }
      &[data-execstate=TIMEDOUT]:after {
        content: 'Timed Out';
      }

      &[data-execstate=WAITING]:after {
        content: 'Waiting';
      }
      &[data-execstate=WAITING][data-next=true]:after {
        content: 'Next Up';
      }

      &[data-execstate=NOT_STARTED]:after {
        content: 'Not Started';
      }
      &.overall{
        &[data-execstate=SUCCEEDED]:after {
          content: 'Succeeded';
          color: @brand-success;
        }
      }
      &[data-execstate=SCHEDULED]:after {
        content: 'Scheduled';
      }
  }

  .wfstepstate, .wfnodestate {
    .subctx{
      .text-muted();
    }
    .stepctx {
      width: 2em;
      display: inline-block;
    }
    .stepnodes {
      margin-left: 10px;
    }

    .nodestatesummary {
      display: none;
    }
    &.collapsed {
      .nodestates {
        display: none;
      }
      .nodestatesummary{
        display: block;
      }
    }
  }
  .wfnodestate{
    border: 1px solid transparent;
    .border-bottom-radius(@border-radius-base);
    .border-top-radius(@border-radius-base);
    .border-right-radius(@border-radius-base);
    .border-left-radius(@border-radius-base);
    .wfnodeoutput{
      max-height: 500px;
      overflow: auto;
      table.execouput{
//        width: auto IMPORTANT!;
      }
    }
    .wfnodeoverall .nodectx{
    }
    &.open{
      border: 1px solid @legend-border-color;
    }
    + .wfnodestate{
      margin-top: @padding-base-vertical;
    }
    .nodename{
      .text-overflow();
    }
    .wfnodestep{
      border: 1px solid transparent;
      .border-bottom-radius(@border-radius-base);
      .border-top-radius(@border-radius-base);
      .border-right-radius(@border-radius-base);
      .border-left-radius(@border-radius-base);
      margin: 4px 0;
      .closed {
        display: none;
      }
    }
    .wfnodestep.open{
      border: 1px solid darken(@legend-border-color,10%);
      .closed {
        display: block;
      }
    }
  }

  .executionshow{
    .runoutput{
      display: none;
    }
    &.affix{
      .runoutput{
        display: block;
      }
    }
  }


  .rdicon.job{
    .glyphicon();
    .glyphicon-book();
    vertical-align: baseline;
  }
  /* use glyphicon for remote option url loading status indicator */
  .remote .remotestatus{
    .glyphicon();
    &.ok{
      color: @brand-success;
      .glyphicon-ok-sign();
    }
    &.error{
      color: @brand-warning;
      .glyphicon-warning-sign();
    }
  }

  .remote .remoteoptionfield:hover{
    background-color: lighten(@brand-info,30%);
    .remotestatus {
      .glyphicon();
      color: @gray;
      .glyphicon-refresh();
    }
  }

  /*
  * job header padding
  */
  .jobInfoSection{
    margin-bottom: 5px;
  }
  .argstring-scrollable {
    max-height: 100px;
    overflow: auto;
  }

  /**
  embed a pager in a column
  */
  .pager{
    &.pager-embed{
      margin-top: 2px;
      margin-bottom: 2px;
    }
    &.pager-right{
      text-align: right;
    }
    &.pager-left{
      text-align: left;
    }
    //alternate sized pager
    &.pager-sm {
      li {
        > a,
        > span {
          padding: 1px 3px;
          border-radius: 3px;
          background:none;
          color: @pagination-bg;
          border: none;
        }
        > a:hover,
        > a:focus {
          border-radius: 3px;
          background: @pagination-bg;
          color: white;
        }
      }
      .disabled {
        > a,
        > a:hover,
        > a:focus,
        > span {
          color: @gray;
          background:none;
          cursor: not-allowed;
        }
      }
    }

  }
  .pagination{

    .disabled {
      &>a,
      &>a:hover,
      &>a:focus,
      &>span {
        background-color: @gray-light;
      }
    }
    &.pagination-embed{
      margin:0;
    }
  }


  // Text button
.textbtn {

  &:hover,
  &:focus,
  &:active,
  &.active
  {
    cursor: pointer;
    text-decoration: underline;
  }
  .nav > li > a&{
    cursor: pointer;
    text-decoration: underline;
  }
}

  .textbtn-on-hover {
    color: @gray;
  }
.textbtn-variant( @color ; @background-color ; @background-higlight) {
    color: @gray;
    background-color: @background-color ;
  &.textbtn-saturated{
    color: @color;
  }
  &.action{
    text-decoration: underline;
  }

  &:hover,
  &:focus,
  &:active,
  &.active,
  &.textbtn-on-hover:hover,
  &.textbtn-on-hover:focus,
  &.textbtn-on-hover:active,
  &.textbtn-on-hover.active
   {
    color: darken(@color, 8%);
    background-color: @background-higlight;
    cursor: pointer;
    text-decoration: underline;
  }

  &:active,
  &.active,
  .open .dropdown-toggle& {
    background-image: none;
  }

  &.disabled,
  &[disabled],
  fieldset[disabled] & {
    color: @gray-light;
    background-color: @background-color;
    &,
    &:hover,
    &:focus,
    &:active,
    &.active {
      color: @gray-light;
      background-color: @background-color;
      cursor: default;
      text-decoration: none;
    }
  }
  &.textbtn-plain{
    text-decoration:none;
  }
  &.query.textbtn {
    border: 1px solid darken(@color, 12%);
    display: inline-block;
    text-decoration: none;
  }
  &.textbtn-on-hover{
    .textbtn-on-hover();
  }

}
.textbtn-default {
  .textbtn-variant(lighten(@brand-primary, 30%),transparent,lighten(@brand-primary, 70%));
}
.textbtn-secondary {
  .textbtn-variant(desaturate(@link-color, 100%),transparent,lighten(desaturate(@link-color, 100%), 50%));
}
.textbtn-muted {
  .textbtn-variant(@text-muted,transparent,lighten(@text-muted, 20%));
}

.textbtn-primary {
  .textbtn-variant(@brand-primary,transparent,lighten(@brand-primary, 50%));
}
// Warning appears as orange
.textbtn-warning {
  .textbtn-variant(@brand-warning,transparent,lighten(@brand-warning, 50%));
}
// Danger and error appear as red
.textbtn-danger {
  .textbtn-variant(@brand-danger,transparent,lighten(@brand-danger, 50%));
}
// Success appears as green
.textbtn-success {
  .textbtn-variant(@brand-success,transparent,lighten(@brand-success, 50%));
}
// Info appears as blue-green
.textbtn-info {
  .textbtn-variant(@brand-info,transparent,lighten(@brand-info, 40%));
}

//represent textual query

    /* query output showing */
  span.query, a.query {

    &.textbtn{
      padding: 3px;
      -moz-border-radius: 3px;
      -webkit-border-radius: 3px;
      border-radius: 3px;
      margin-right: 5px;
      border: 1px solid #ddd;
    }

    & span.querykey{
      color: #555;
    }
    &  span.queryvalue.date {
      font-weight: bold;
    }
    & span.querykey {
      color: #555;
    }
    & span.queryvalue {
      color: blue;
    }
    &.textbtn:hover span.queryvalue {
      color: blue;
    }
    & span.querykey.exclude {
      color: #555;
      text-decoration: line-through;
    }
    & span.querykey.include {
//      color: blue;
    }
  }


//div or other block that has a bound action

.action:hover {
  background: @table-bg-hover;
  cursor: pointer;
}
.action.active{
  background: @table-bg-active;
}

.progress {
  height: @line-height-computed;
  .progress-bar {
    line-height: @line-height-computed;
  }
}
.runstatus .progress, .progress.progress-embed{
  margin-bottom: 0;
}
.progress-bar{
  white-space: nowrap;
  padding-left: @border-radius-base;
  border-right: 1px solid darken(@progress-bar-color,20%);
}

.well .progress{
  background-color: darken(@progress-bg,10%);
}
.progress.indefinite{
  .progress-bar{
    width:100% !important;
  }
}
.spacing{
  margin-top: @padding-base-vertical;
}

.spacing-sm {
  margin-top: @padding-small-vertical;
}

.spacing-lg {
  margin-top: @padding-large-vertical;
}
.row{
  &.row-space {
    margin-top: @padding-base-vertical;
  }
  &.row-space-sm {
    margin-top: @padding-small-vertical;
  }
  &.row-space-lg {
    margin-top: @padding-large-vertical;
  }
}
section{
  &.section-space{
    margin-top: @padding-base-vertical;
  }
  &.section-space-sm {
    margin-top: @padding-small-vertical;
  }
  &.section-space-lg {
    margin-top: @padding-large-vertical;
  }
  & + &.section-separator {
    border-top: 1px solid @legend-border-color;
  }
  &.section-separator-solo {
    border-top: 1px solid @legend-border-color;
    border-bottom: 1px solid @legend-border-color;
  }
}

//alternate well without background
.well{
  &.well-nobg{
    background: none;
    border-width: 0;
  }
  &.inline{
    margin:0;
  }
}

//inset a box by the normal column gutter
.col-inset{
  padding-left: (@grid-gutter-width / 2);
}
//border around a column
.col-box {
  border: 1px solid @table-border-color;
}


// clock icon in scheduled job view is gray if job will not fire
.scheduletime{
  > .glyphicon:first-child {
    color:@brand-success;
  }
  &.disabled .glyphicon, &.disabled .detail{
    color:@text-muted;
  }
  &.willnotrun .glyphicon, &.willnotrun .detail{
    color:@brand-warning;
  }
}

//tags for nodes

  .nodetags .tag{
    background-color: @gray-lighter;
  }
  span.tag, a.tag {
  }

  span.tag.active, a.tag.active {
    color: @label-color;
    border: 1px solid @brand-primary;
    background: @label-primary-bg;
  }

  //nodes table
  table.nodesTable th{
    .text-muted();
  }
  table.nodesTable tbody.subattrs td,table.nodesTable tr.subattrs td{
    background-color: @table-bg-accent;
  }

  //content with padding like nav-tabs links
  ul.nav.nav-tabs > li{
    .tabs-sibling {
      float: left;
      position: relative;
      display: block;
      border: 1px solid transparent;
      margin-right: 5px;
      margin-left: 3px;
      padding: 10px 15px;
      label{
        margin-bottom: 0;
      }
      &.tabs-sibling-compact{
        padding:0;
        &.form-inline .input-group .form-control{
          width: 400px;
        }
      }
    }
  }

  //execution status text

  .exec-status{
    &.other, &[data-execstate=OTHER] {
      color: @brand-warning;

      &.icon {
        .glyphicon();
        .glyphicon-asterisk();
      }
    }
    &.fail, &[data-execstate=FAILED] {
      color: @brand-danger;

      &.icon {
        .glyphicon();
        .glyphicon-minus-sign();
      }
    }

    &.running, &[data-execstate=RUNNING] {
      color: @brand-info;

      &.icon {
        .glyphicon();
        .glyphicon-play-circle();
      }
    }

    &.succeed, &[data-execstate=SUCCEEDED] {
      color: @brand-success;

      &.icon {
        .glyphicon();
        .glyphicon-ok-circle();
      }
    }
    &.aborted, &[data-execstate=ABORTED] {
      color: @gray-light;

      &.icon {
        .glyphicon();
        .glyphicon-remove-circle();
      }
    }
    &.timedout, &[data-execstate=TIMEDOUT] {
      color: @brand-warning;

      &.icon {
        .glyphicon();
        .glyphicon-time();
      }
    }
    &.failedretry, &[data-execstate=FAILED-WITH-RETRY] {
      color: @brand-warning;

      &.icon {
        .glyphicon();
        .glyphicon-repeat();
      }
    }
    &.scheduled, &[data-execstate=SCHEDULED] {
      color: @brand-info;

      &.icon {
        .glyphicon();
        .glyphicon-time();
      }
    }
  }
  .exec-status-text.custom-status{
    font-style: italic;
  }
.exec-status-text.custom-status:before{
  content: '“';
}
.exec-status-text.custom-status:after{
  content: '”';
}

  //link color variants
  a {
    &.secondary {
      color: lighten(@link-color, 20%);
      &:hover, &.active {
        color: @link-hover-color;
      }
    }

    //link color for secondary links
    &.primary {
      color: darken(@link-color, 15%);
      &:hover,&.active{
        color: @link-hover-color;
      }
    }
  }

  tr.alternateRow {
    background-color: @table-bg-accent;
    &.selected {
      border: 1px solid #999;
    }
  }

  .tab-content{
    .panel.panel-tab-content,
    .panel.panel-tab-content > .panel-heading,
    .panel.panel-tab-content > .table + .panel-body,
    .list-group.list-group-tab-content .list-group-item:first-child {
      border-top: 0;
      .border-top-radius(0);
    }
  }
  .nav.nav-tabs + .panel.panel-tab-content, .nav.nav-tabs + .panel.panel-tab-content > .table + .panel-body , .nav.nav-tabs + .panel.panel-tab-content > .table  {
      border-top: 0;
      .border-top-radius(0);
  }
  .modal-content{
    .panel.panel-modal-content{
      margin-bottom:0;
    }
  }


  //padding between sequential buttons in a form group
  .form-group .panel-footer, .panel-footer .buttons, .panel-footer.buttons{
    .btn + .btn  {
      margin-left: 5px;
    }
    .btn.pull-right{
      margin-left: 5px;
    }
  }

  //resize control-label to match the input-sm vertical padding
  .form-horizontal .control-label.input-sm{
    padding: @padding-small-vertical @padding-small-horizontal;
  }
  .form-control-static{
    display: inline-block;
    vertical-align: middle;
  }

  //style text like a form label
  .text-form-label {
    margin-bottom: 5px;
    font-weight: bold;
  }

  //embed a form-inline within another form
  .form-horizontal,.form {
    .form-inline .form-group{
      margin-left: 0;
      margin-right: 0;
    }
  }

  /**
   * Nodes page
   */

  //run output in nodes page has horizontal border
  .nodes_run_content{
    margin-top: 10px;
    & .inlineexecution{
      &.panel-body{
        padding:0;
      }
    }
  }

  /** class matchednodes.embed used when showing an embedded list of matched nodes
  */

  .matchednodes.embed{
    .node_entry {
      display: inline-block;
      white-space: nowrap;
      padding: 1px;
      margin: 1px 2px;
      border: 1px solid #aaa;
      border-radius: 3px;
      -moz-border-radius: 3px;
      -webkit-border-radius: 3px;
    }
    &.embed_clean{
      .node_entry{
        border:0;
        padding: 1px 2px;
        margin: 1px 1px;
        border-radius: 2px;
        -moz-border-radius: 2px;
        -webkit-border-radius: 2px;
      }
    }
    div.info.note {
      margin-bottom: 10px;
    }
  }
  .outputcontrols{
    border-bottom: 1px solid @nav-tabs-border-color;
  }

  .btn-group .btn.force-last-child{
    .border-right-radius(@border-radius-base) !important;
  }
  .btn-group .btn.btn-sm.force-last-child,
  .btn-group .btn.btn-xs.force-last-child{
    .border-right-radius(@border-radius-small) !important;
  }
  .btn-group .btn.btn-lg.force-last-child{
    .border-right-radius(@border-radius-large) !important;
  }

  //affix for execution show page
  .executionshow {
    &.affix {

      top: 0;
      right:0;
      width: 100%;
      background: white;
      z-index: 1;
      .container-fixed();
      padding-top:@navbar-margin-bottom;
      padding-bottom:10px;
      border-bottom: 1px solid @list-group-border;
      &.panel-heading-affix{
        background-color: @panel-default-heading-bg;
        width:auto;
        margin: 0 15px;//normal col padding
        padding: @base-item-padding-vertical @base-item-padding-horizontal;
      }
    }
  }
  .affix .affixed-hidden{
    display: none;
  }
  .affixed-shown{
    display: none;
    .affix &{
      display: block;
    }
    .affix &.affixed-shown-inline{
      display: inline;
    }
  }




  //////////////////////////
  // execution output table view

  table.execoutput {
    border-collapse: separate;
    .stepnum.short:before {
      content: "•";
    }
    td.node {
      color: @brand-light;
      text-align: right;
      width: 6em;
      max-width: 20em;
      padding: 0 3px;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    td.info {
      font-family: courier, mono;
    }
    tr.contextRow.expandable.closed {
      background: @table-border-color;
    }
    tr.contextRow.expandable.opened {
      background: @gray-lighter;
    }
    tr.contextRow.down {
      td {
        border-top: 1px solid #dddddd;
        border-bottom: 0;
      }
    }
    tr.contextRow.closed {
      .stepident {
        display: inline;
      }
    }
    td.node.empty {
      color: #eee;
    }
    tr.node-new td{
      border-top: 2px solid white;
    }
    td.node{
    }
    td.repeat {
//      visibility: hidden;
    }
    tr.contextRow.expandable.closed:hover {
      background: #e3edfa;
    }
    tr.contextRow {
      color: @brand-light;
      td.icon {
        padding: 1px 3px;
      }
      td {
        padding: 5px;
        vertical-align: middle;
      }
      td.rowexpicon {
        width: 16px;
        margin: 0;
        padding: 4px;
        vertical-align: middle;
      }
      span.contextInfo {
        color: #555;
      }
      span.node {
        font-weight: bold;
      }
    }
    td {
      border: 1px solid @table-border-color;
      vertical-align: baseline;
      padding: 0;
      border: 0;
      vertical-align: baseline;
    }
    td.node.empty:before {
      content: 'console';
    }
    tr.contextRow.console {
      background: #fff;
      td {
        color: #555;
      }
    }
    .ctxcounter {
      margin-left: 10px;
      font-family: monospace;
    }
    td.data.datahtml {
//      font-family: verdana, arial, helvetica, sans-serif;
      a {
        text-decoration: underline;
        color: blue;
      }
      code {
        font-family: "Lucida Console", courier, monospace;
      }
    }
    tr.alternateRow {
      td.info.time {
        color: #808080;
      }
      td.data {
        background: #f0f0f0;
      }
    }
    tr.contextRow.up {
      td {
        border-top: 0;
      }
    }
    td.stepnum {
      padding: 0 0.5em;
      width: 5em;
      white-space: nowrap;
    }
    td.info.time {
      color: @brand-light;
      white-space: nowrap;
      width: 6em;
    }
    th {
      background: none;
      border: none;
    }
    td.datahtml {
      white-space: normal;
      p {
        margin: 0;
      }
      p+p {
        margin: 1em 0 0 0;
      }
    }
    td.data {
      border-left: 1px solid white;
      white-space: pre-wrap;
      font-family: "Lucida Console", courier, monospace;
      padding: 1px 3px;
      color: black;
    }
    td.time{
      padding: 0 3px;
      background-color: @gray-lighter;
    }
    td.node,td.stepnum{
      padding: 0 3px;
      background-color: @gray-lighter;
    }

    td.data.log_verbose, td.data.log_debug {
      color: @brand-light;
    }

    span.node:after, td.node:after {

    }

    table.execoutput.collapse_node {
      td.node {
        display: none;
      }
    }


    td.data.log_error {
      color: #800;
    }
    td.data.log_warn {
      color: #a80;
    }

    table.execoutput.collapse_stepnum {
      td.stepnum {
        display: none;
      }
    }

    table.execoutput.collapse_time td.time, table.execoutput.collapse_time td.info {
      display: none;
    }

    .ctxcounter.SEVERE, .ctxcounter.ERROR {
      color: red;
    }
    &.collapse_time td.time, &.collapse_time td.info {
      display: none;
    }

    &.collapse_node td.node {
      display: none;
    }

    &.collapse_stepnum td.stepnum {
      display: none;
    }
  }
  .log_line{
    white-space: pre-wrap;
    font-family: "Lucida Console", courier, monospace;
    color: black;
    &.level_verbose, &.level_debug {
      color: @brand-light;
    }
    &.level_warn, &.level_error {
      color: #800;
    }
  }

  .stepident, .stepnum {
//    color: @brand-light;
  }

  //history rows with default action link
  tr.link:hover a._defaultAction{
    color: @link-hover-color;
    text-decoration: underline;
  }
  tr.activity_row.highlight td{
    background: @table-bg-accent;
  }

  //workflow editor, option editor, autohilite:
  span.autohilite:hover {
    background: lighten(@brand-info, 40%);
  }

  span.autoedit {
    padding: 3px;
    cursor: pointer;
  }

  span.autoedit:hover {
    padding: 2px;
    border: 1px dotted @brand-info;
  }
  /**
   * single step or option edit box
   */
  .wfitemEditForm, .optEditForm{
    border: 2px solid @legend-border-color;
    .border-bottom-radius(@border-radius-base);
    .border-top-radius(@border-radius-base);
    padding: @base-item-padding-vertical @base-item-padding-horizontal;
    &.container{
      background: white;
    }
  }


//option values in code sections
.optvalue{
  color: @text-muted;
  &.optextra {
    border-bottom: 1px dashed @text-muted;
  }
}
.optkey{
  color: @brand-primary;
}

//emphasis within text-muted
  .text-muted{
    &.text-em strong{
      color: @brand-primary;
      font-weight: normal;
    }
  }
  .text-header{
    text-transform: uppercase;
  }
  .text-small{
    font-size: @font-size-small;
  }
  .table-footer{
    background: @panel-footer-bg;
  }
  th.table-header{
    .text-header();
    .text-center();
    .text-muted();
  }


  //node detail

  /** node detail */
.nodedetail {
   & tr td.key {
    width: 200px;
    vertical-align: top;
     &.namespace{
       padding-right: 20px;
     }
   }
  & .key{
    text-align: right;
    font-weight: bold;
    color: #555;
  }
  & tr .value {
    vertical-align: top;
    max-width: 800px;
  }
  &.detailpopup{
    max-height: 500px;
    max-width: 600px;
    overflow-y: auto;
  }
  &.embed{
    & tr .value {
      max-width: 400px;
    }
  }
}

.node_entry{
  .nodeident, .nodedesc, .nodetags, .username, .hostname{
    white-space: nowrap;
    overflow-x: hidden;
    text-overflow: ellipsis;
  }
  .nodetags{
    max-width: 20em;
  }
}

  .node_entry.server .nodedesc:before {
    color: #f66;
    content: " server ";
    padding-left: 18px;
  }
  .nodedetail.server .nodedesc:before {
    color: #f66;
    content: " server " "\2022" " ";
    padding-left: 18px;
  }
  .text-parenthetical:before{
    content: '(';
  }
  .text-parenthetical:after{
    content: ')';
  }

  //search icons
  .hover-action-holder {
    .hover-action{
      visibility: hidden;
    }
    &:hover  .hover-action {
      visibility: visible;
    }
  }


//override padding for list-group-item

.list-group-item {
  padding: @list-group-item-padding-vertical @list-group-item-padding-horizontal;
}

.form-group {
  margin-bottom: @base-item-padding-vertical;
}

.panel-heading , .panel-footer {
  padding: @base-item-padding-vertical @base-item-padding-horizontal;
}

input.placeholder{
  color: gray;
}

//events list
.table.events-table{
  table-layout: fixed;
  td.eventargs{
    width: 40%;
    overflow:auto;
    text-overflow: ellipsis;
  }
  td.eventicon{
    width: 24px;
  }
  td.eventtitle{
    width: 20%;
  }
  td.eventtitle.adhoc{
    width: 60%;
  }
  td.date{
    width: 20%;
  }
  td.user{
    width:10%;
  }
  td.nodecount{
    white-space:nowrap;
    text-align:right;
    width:5%;
  }
  &.events-table-embed{
    tr.adhoc{
      td.eventtitle{
        width: 60%;
      }
      td.eventargs{
        width:0%;
      }
    }
    td.user{
      //nodecount is not shown
      width: 15%;
    }
  }
}
.table.events-table td.eventtitle.adhoc {
  font-style: italic;
  color: #888;
}

//pre formatted regex syntax error for node filters

pre.filtererror{
  background-color: transparent;
  border: none;
  color: @brand-info;
  padding:0;
}
td {

  &.ellipsis {
    position: relative;
  }
  &.ellipsis:before {
    content: '&nbsp;';
    visibility: hidden;
  }
  &.ellipsis span {
    position: absolute;
    left: 0;
    right: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
}
.overflowx{
  text-overflow: ellipsis;
  overflow-x: auto;
  .scroll{
    overflow-x: scroll;
  }
}
.overflowy{
  max-height: 300px;
  overflow-y:auto;
}


//rundeck icons

  .rdicon {
    display: inline-block;
    vertical-align: middle;
    background-repeat: no-repeat;
    &.icon-small {
      width: 16px;
      height: 16px;

      &.shell, &.command {
        background-image: url("icon-small-shell.png");
      }

      &.script {
        background-image: url("icon-small-script.png");
      }

      &.scriptfile,&.scripturl {
        background-image: url("icon-small-scriptfile.png");
      }

      &.plugin {
        background-image: url("icon-small-plugin.png");
      }
      &.node {
        height: 10px;
        background-image: url("icon-small-Node.png");
      }

      &.node.node-runnable {
        background-image: url("icon-small-Node-run.png");
      }
    }
    &.icon {
      width: 32px;
      height: 32px;

      &.shell, &.command {
        background-image: url("icon-shell.png");
      }

      &.script {
        background-image: url("icon-script.png");
      }

      &.scriptfile {
        background-image: url("icon-scriptfile.png");
      }
    }
    &.icon-med {
      width: 24px;
      height: 24px;

      &.shell, &.command {
        background-image: url("icon-med-shell.png");
      }
      &.script {
        background-image: url("icon-med-script.png");
      }

      &.scriptfile {
        background-image: url("icon-med-scriptfile.png");
      }
    }

    &.app-logo.middle {
      vertical-align: middle;
    }

    //retina/@2x images
    @media
    only screen and (-webkit-min-device-pixel-ratio: 2),
    only screen and (   min--moz-device-pixel-ratio: 2),
    only screen and (     -o-min-device-pixel-ratio: 2/1),
    only screen and (        min-device-pixel-ratio: 2),
    only screen and (                min-resolution: 192dpi),
    only screen and (                min-resolution: 2dppx) {


      &.icon-small {
        background-size: 16px 16px;

        &.node {
          background-size: 16px 10px;
          background-image: url("icon-small-Node@2x.png");
        }

        &.node.node-runnable {
          background-image: url("icon-small-Node-run@2x.png");
        }

        &.shell, &.command {
          background-image: url("icon-small-shell@2x.png");
        }

        &.script {
          background-image: url("icon-small-script@2x.png");
        }

        &.scriptfile {
          background-image: url("icon-small-scriptfile@2x.png");
        }

        &.plugin {
          background-image: url("icon-small-plugin@2x.png");
        }
      }

      &.icon {
        background-size: 32px 32px;

        &.shell, &.command {
          background-image: url("icon-shell@2x.png");
        }

        &.script {
          background-image: url("icon-script@2x.png");
        }

        &.scriptfile {
          background-image: url("icon-scriptfile@2x.png");
        }

      }

      &.icon-med {
        background-size: 24px 24px;

        &.shell, &.command {
          background-image: url("icon-med-shell@2x.png");
        }

        &.script {
          background-image: url("icon-med-script@2x.png");
        }

        &.scriptfile {
          background-image: url("icon-med-scriptfile@2x.png");
        }

      }

    }

  }

  //help tooltip
  .helptooltip{

    position: absolute;
    background: white;
    max-width: 500px;
    width: 500px;
  }

  //updates for bootswatch

  .btn.active {
    .box-shadow(none);
  }

//version identity
.rundeck-version-identity,.rundeck-server-uuid{
  text-wrap: none;
  white-space: nowrap;
  .version-icon{
    .badge();
    background-color: #eee;
    font-weight: normal;
  }
}
.rundeck-version-block{
  display: inline-block;
  padding: @padding-base-horizontal @padding-base-vertical;
  .border-bottom-radius(@border-radius-base);
  .border-top-radius(@border-radius-base);
}
.rundeck-version-name{
  &:before{
    content:' "';
  }
  &:after{
    content:'" ';
  }
}
.rundeck-version-date{
  font-style: italic;
}

/////
//navbar-text variations
.navbar-default {
  .navbar-text {
    &.navbar-text-warning {
      .text-warning();
    }
  }
}

//popover variation
.popover{
  &.popover-wide{
    max-width: @popover-wide-max-width;
  }
}


//badge variation

.badge-variant(@background-color; @color ){
  color: @color;
  background-color: @background-color ;
}

.badge-default {
  .badge-variant(lighten(@brand-primary, 30%),@badge-color);
}
.badge-secondary {
  .badge-variant(desaturate(@link-color, 100%),@badge-color);
}
.badge-muted {
  .badge-variant(@text-muted,@badge-color);
}

.badge-primary {
  .badge-variant(@brand-primary,@badge-color);
}
// Warning appears as orange
.badge-warning {
  .badge-variant(@brand-warning,@badge-color);
}
// Danger and error appear as red
.badge-danger {
  .badge-variant(@brand-danger,@badge-color);
}
// Success appears as green
.badge-success {
  .badge-variant(@brand-success,@badge-color);
}
// Info appears as blue-green
.badge-info {
  .badge-variant(@brand-info,@badge-color);
}

//alert in jumbotron style
.alert-welcome{
  .alert-variant(@jumbotron-bg; @jumbotron-bg; @text-color);
}

//link variant
.link-bare{
  text-decoration: none;
}

//pseudo table layout
.grid {
  display: table;
  width: 100%;
  .grid-row {
    display: table-row;
    .grid-cell {
      padding: @table-cell-padding;
      display: table-cell;
      &.grid-front{
        width: 30px;
      }
      &.grid-rest{
        width: 100%;
      }
    }
  }
}

//links with text-color style

a {
  &.text-primary:hover,
  &.text-success:hover,
  &.text-danger:hover,
  &.text-warning:hover,
  &.text-info:hover {
    color: @link-hover-color;
  }
}

.autohide {
  visibility: hidden;
}

.autoshow:hover .autohide {
  visibility: visible;
}

.autocomplete-suggestions { border: 1px solid #999; background: #FFF; overflow: auto; }
.autocomplete-suggestion { padding: 2px 5px; white-space: nowrap; overflow: hidden; }
.autocomplete-selected { background: #F0F0F0; }
.autocomplete-suggestions strong { font-weight: normal; color: #3399FF; }
.autocomplete-group { padding: 2px 5px; }
.autocomplete-group strong { display: block; border-bottom: 1px solid #000; }